\hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4}{}\section{kblib\+:\+:cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$ Class Template Reference} \label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4}\index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} {\ttfamily \#include $<$kblib/memory.\+h$>$} Inheritance diagram for kblib\+:\+:cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=217pt]{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4__inherit__graph} \end{center} \end{figure} Collaboration diagram for kblib\+:\+:cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$\+:\nopagebreak \begin{figure}[H] \begin{center} \leavevmode \includegraphics[width=217pt]{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4__coll__graph} \end{center} \end{figure} \subsection*{Public Types} \begin{DoxyCompactItemize} \item using \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a48c12083d8301dad80a1f1644c427841}{pointer} = \hyperlink{namespacekblib_1_1detail__memory_a9cb8ba19f19eee413f3cb3a221bb3a60}{detail\+\_\+memory\+::filter\+\_\+deleter\+\_\+pointer\+\_\+t}$<$ Deleter, T $>$ \item using \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a9bcd4894e8a1c90a2e3dddf1d7903c90}{element\+\_\+type} = T \item using \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a3150c6330dbd2ac80a4d30864c67d7a4}{deleter\+\_\+type} = Deleter \item using \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} = std\+::unique\+\_\+ptr$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \end{DoxyCompactItemize} \subsection*{Public Member Functions} \begin{DoxyCompactItemize} \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a6dd759ef278c5bd1361b187d612da8b5}{cond\+\_\+ptr} () noexcept=default \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af36f8d74ab016b573fa7a36a53bac483}{cond\+\_\+ptr} (std\+::nullptr\+\_\+t) noexcept \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_aedbffcbfcd8e57960dc26610a10ab517}{cond\+\_\+ptr} (T $\ast$p, bool owner=false, std\+::decay\+\_\+t$<$ Deleter $>$ del=\{\}) noexcept \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a373148c69e166f1e92e8bbbf05c620a6}{cond\+\_\+ptr} (T $\ast$p, std\+::decay\+\_\+t$<$ Deleter $>$ del) noexcept \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7ae8e77f270a532e24a9ef5ce461e46a}{cond\+\_\+ptr} (\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&\&p) noexcept \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae93e3c7b77843a757d0572b8d9c67a19}{cond\+\_\+ptr} (const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&other)=delete \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a01a89778be0fb9fa6c9a6847ecf6f250}{cond\+\_\+ptr} (\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&\&other) noexcept \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_afc4c77168bfb4d8b48c6cf4a34249250}{operator=} (const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&rhs) \&-\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&=delete \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7355204599ce0942ac209cd63e8c8f5d}{operator=} (\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&\&rhs) \&noexcept -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \& \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a15595f4205ce4f305d1fe5fb5e58b974}{operator=} (\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&\&rhs) -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \& \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a91d8990a847e41065015815da307d208}{to\+\_\+unique} () \&\&noexcept -\/$>$ \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \begin{DoxyCompactList}\small\item\em Transfers ownership to a unique\+\_\+ptr if possible. If $\ast$this is not owning, returns nullptr. \end{DoxyCompactList}\item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acf0ff1f4067129b135dfb63f1416feb1}{operator unique} () \&\&noexcept \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7777ea471605666bd375dac4377615c2}{$\sim$cond\+\_\+ptr} () noexcept \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ac8406b39f6fafb27ae7e275bf327b19d}{weak} () const \&noexcept -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af611c691eddf7ca679f3b7c00ab4601f}{owns} () const noexcept -\/$>$ bool \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a0454f4b8040139139dbe7373772a170e}{release} () \&noexcept -\/$>$ T $\ast$ \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a59b64b2b7531650761a28aaaa017fa00}{get\+\_\+deleter} () noexcept -\/$>$ Deleter \& \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a01eace688378fed665329906cee1ef94}{get\+\_\+deleter} () const noexcept -\/$>$ const Deleter \& \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a9d845b09ab52c539f265aa99c9913e18}{reset} (T $\ast$p=nullptr, bool owner=false, std\+::decay\+\_\+t$<$ Deleter $>$ del=\{\}) \&noexcept -\/$>$ void \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ad51a29b7255981c5f093197dbbdaf6a4}{reset} (T $\ast$p, std\+::decay\+\_\+t$<$ Deleter $>$ del=\{\}) \&noexcept -\/$>$ void \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a29e9a6c77df27230b4f1c26ceda675ab}{swap} (\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&other) -\/$>$ void \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a827a1eb96b8ce18d8d42386d2ca4bfda}{get} () \&noexcept -\/$>$ T $\ast$ \item auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae6cba8b0ca1bd342dd6d9f59c128ea6f}{get} () const \&noexcept -\/$>$ const T $\ast$ \item \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acc70a9c63f4c91157a21d12a4fcdbdab}{operator bool} () const noexcept \item T \& \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7adc748dcb4969a61f2d934d4225d05c}{operator\mbox{[}$\,$\mbox{]}} (std\+::size\+\_\+t index) \&noexcept \item const T \& \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7cdecf23d865d2d30f227332f7385d54}{operator\mbox{[}$\,$\mbox{]}} (std\+::size\+\_\+t index) const \&noexcept \end{DoxyCompactItemize} \subsection*{Static Public Member Functions} \begin{DoxyCompactItemize} \item static auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acdfd0da37245fc27491a9f86419fd42d}{adopt} (T $\ast$p) noexcept -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \item static auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a0f8eb4b08447bd98c3c61cc2f2063e98}{adopt} (T $\ast$p, \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a3150c6330dbd2ac80a4d30864c67d7a4}{deleter\+\_\+type} del) noexcept -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \end{DoxyCompactItemize} \subsection*{Friends} \begin{DoxyCompactItemize} \item constexpr auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af61e5b452edde39ca5d0cdde94fd65ea}{operator==} (const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&lhs, const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&rhs) noexcept -\/$>$ bool \item constexpr auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a92b1d18c8db327093cb7978c80a2a00a}{operator==} (const \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&lhs, const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&rhs) noexcept -\/$>$ bool \item constexpr auto \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae57a614a50b0c04e6958395ef8898e25}{operator==} (const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&lhs, const \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&rhs) noexcept -\/$>$ bool \end{DoxyCompactItemize} \subsection{Detailed Description} \subsubsection*{template$<$typename T, typename Deleter$>$\newline class kblib\+::cond\+\_\+ptr$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$} Definition at line 580 of file memory.\+h. \subsection{Member Typedef Documentation} \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a3150c6330dbd2ac80a4d30864c67d7a4}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a3150c6330dbd2ac80a4d30864c67d7a4}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!deleter\+\_\+type@{deleter\+\_\+type}} \index{deleter\+\_\+type@{deleter\+\_\+type}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{deleter\+\_\+type}{deleter\_type}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ using \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a3150c6330dbd2ac80a4d30864c67d7a4}{deleter\+\_\+type} = Deleter} Definition at line 586 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a9bcd4894e8a1c90a2e3dddf1d7903c90}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a9bcd4894e8a1c90a2e3dddf1d7903c90}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!element\+\_\+type@{element\+\_\+type}} \index{element\+\_\+type@{element\+\_\+type}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{element\+\_\+type}{element\_type}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ using \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a9bcd4894e8a1c90a2e3dddf1d7903c90}{element\+\_\+type} = T} Definition at line 585 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a48c12083d8301dad80a1f1644c427841}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a48c12083d8301dad80a1f1644c427841}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!pointer@{pointer}} \index{pointer@{pointer}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{pointer}{pointer}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ using \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a48c12083d8301dad80a1f1644c427841}{pointer} = \hyperlink{namespacekblib_1_1detail__memory_a9cb8ba19f19eee413f3cb3a221bb3a60}{detail\+\_\+memory\+::filter\+\_\+deleter\+\_\+pointer\+\_\+t}$<$Deleter, T$>$} Definition at line 584 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!unique@{unique}} \index{unique@{unique}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{unique}{unique}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ using \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} = std\+::unique\+\_\+ptr$<$T\mbox{[}$\,$\mbox{]}, Deleter$>$} Definition at line 593 of file memory.\+h. \subsection{Constructor \& Destructor Documentation} \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a6dd759ef278c5bd1361b187d612da8b5}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a6dd759ef278c5bd1361b187d612da8b5}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!cond\+\_\+ptr@{cond\+\_\+ptr}} \index{cond\+\_\+ptr@{cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{cond\+\_\+ptr()}{cond\_ptr()}\hspace{0.1cm}{\footnotesize\ttfamily [1/7]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [default]}, {\ttfamily [noexcept]}} \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af36f8d74ab016b573fa7a36a53bac483}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af36f8d74ab016b573fa7a36a53bac483}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!cond\+\_\+ptr@{cond\+\_\+ptr}} \index{cond\+\_\+ptr@{cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{cond\+\_\+ptr()}{cond\_ptr()}\hspace{0.1cm}{\footnotesize\ttfamily [2/7]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}\item[{std\+::nullptr\+\_\+t}]{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 596 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_aedbffcbfcd8e57960dc26610a10ab517}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_aedbffcbfcd8e57960dc26610a10ab517}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!cond\+\_\+ptr@{cond\+\_\+ptr}} \index{cond\+\_\+ptr@{cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{cond\+\_\+ptr()}{cond\_ptr()}\hspace{0.1cm}{\footnotesize\ttfamily [3/7]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}\item[{T $\ast$}]{p, }\item[{bool}]{owner = {\ttfamily false}, }\item[{std\+::decay\+\_\+t$<$ Deleter $>$}]{del = {\ttfamily \{\}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}, {\ttfamily [noexcept]}} Definition at line 598 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a373148c69e166f1e92e8bbbf05c620a6}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a373148c69e166f1e92e8bbbf05c620a6}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!cond\+\_\+ptr@{cond\+\_\+ptr}} \index{cond\+\_\+ptr@{cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{cond\+\_\+ptr()}{cond\_ptr()}\hspace{0.1cm}{\footnotesize\ttfamily [4/7]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}\item[{T $\ast$}]{p, }\item[{std\+::decay\+\_\+t$<$ Deleter $>$}]{del }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}, {\ttfamily [noexcept]}} Definition at line 601 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7ae8e77f270a532e24a9ef5ce461e46a}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7ae8e77f270a532e24a9ef5ce461e46a}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!cond\+\_\+ptr@{cond\+\_\+ptr}} \index{cond\+\_\+ptr@{cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{cond\+\_\+ptr()}{cond\_ptr()}\hspace{0.1cm}{\footnotesize\ttfamily [5/7]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}\item[{\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&\&}]{p }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 604 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae93e3c7b77843a757d0572b8d9c67a19}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae93e3c7b77843a757d0572b8d9c67a19}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!cond\+\_\+ptr@{cond\+\_\+ptr}} \index{cond\+\_\+ptr@{cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{cond\+\_\+ptr()}{cond\_ptr()}\hspace{0.1cm}{\footnotesize\ttfamily [6/7]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}\item[{const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}} \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a01a89778be0fb9fa6c9a6847ecf6f250}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a01a89778be0fb9fa6c9a6847ecf6f250}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!cond\+\_\+ptr@{cond\+\_\+ptr}} \index{cond\+\_\+ptr@{cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{cond\+\_\+ptr()}{cond\_ptr()}\hspace{0.1cm}{\footnotesize\ttfamily [7/7]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}\item[{\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&\&}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 610 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7777ea471605666bd375dac4377615c2}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7777ea471605666bd375dac4377615c2}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!````~cond\+\_\+ptr@{$\sim$cond\+\_\+ptr}} \index{````~cond\+\_\+ptr@{$\sim$cond\+\_\+ptr}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{$\sim$cond\+\_\+ptr()}{~cond\_ptr()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::$\sim$\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 668 of file memory.\+h. \subsection{Member Function Documentation} \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acdfd0da37245fc27491a9f86419fd42d}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acdfd0da37245fc27491a9f86419fd42d}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!adopt@{adopt}} \index{adopt@{adopt}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{adopt()}{adopt()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ static auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::adopt (\begin{DoxyParamCaption}\item[{T $\ast$}]{p }\end{DoxyParamCaption}) -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}, {\ttfamily [noexcept]}} Definition at line 614 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a0f8eb4b08447bd98c3c61cc2f2063e98}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a0f8eb4b08447bd98c3c61cc2f2063e98}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!adopt@{adopt}} \index{adopt@{adopt}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{adopt()}{adopt()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ static auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::adopt (\begin{DoxyParamCaption}\item[{T $\ast$}]{p, }\item[{\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a3150c6330dbd2ac80a4d30864c67d7a4}{deleter\+\_\+type}}]{del }\end{DoxyParamCaption}) -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}, {\ttfamily [noexcept]}} Definition at line 617 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a827a1eb96b8ce18d8d42386d2ca4bfda}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a827a1eb96b8ce18d8d42386d2ca4bfda}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!get@{get}} \index{get@{get}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{get()}{get()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \& -\/$>$ T$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 714 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae6cba8b0ca1bd342dd6d9f59c128ea6f}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae6cba8b0ca1bd342dd6d9f59c128ea6f}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!get@{get}} \index{get@{get}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{get()}{get()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::get (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const \& -\/$>$ const T$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 716 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a59b64b2b7531650761a28aaaa017fa00}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a59b64b2b7531650761a28aaaa017fa00}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!get\+\_\+deleter@{get\+\_\+deleter}} \index{get\+\_\+deleter@{get\+\_\+deleter}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{get\+\_\+deleter()}{get\_deleter()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::get\+\_\+deleter (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) -\/$>$ Deleter\& \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 684 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a01eace688378fed665329906cee1ef94}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a01eace688378fed665329906cee1ef94}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!get\+\_\+deleter@{get\+\_\+deleter}} \index{get\+\_\+deleter@{get\+\_\+deleter}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{get\+\_\+deleter()}{get\_deleter()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::get\+\_\+deleter (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const -\/$>$ const Deleter\& \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 686 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acc70a9c63f4c91157a21d12a4fcdbdab}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acc70a9c63f4c91157a21d12a4fcdbdab}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator bool@{operator bool}} \index{operator bool@{operator bool}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator bool()}{operator bool()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::operator bool (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}, {\ttfamily [noexcept]}} Definition at line 718 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acf0ff1f4067129b135dfb63f1416feb1}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_acf0ff1f4067129b135dfb63f1416feb1}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator unique@{operator unique}} \index{operator unique@{operator unique}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator unique()}{operator unique()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::operator \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \&\&\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [explicit]}, {\ttfamily [noexcept]}} Definition at line 664 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_afc4c77168bfb4d8b48c6cf4a34249250}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_afc4c77168bfb4d8b48c6cf4a34249250}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator=@{operator=}} \index{operator=@{operator=}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::operator= (\begin{DoxyParamCaption}\item[{const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&}]{rhs }\end{DoxyParamCaption}) \& -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \&=delete\hspace{0.3cm}{\ttfamily [delete]}} \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7355204599ce0942ac209cd63e8c8f5d}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7355204599ce0942ac209cd63e8c8f5d}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator=@{operator=}} \index{operator=@{operator=}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::operator= (\begin{DoxyParamCaption}\item[{\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&\&}]{rhs }\end{DoxyParamCaption}) \& -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}\& \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 631 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a15595f4205ce4f305d1fe5fb5e58b974}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a15595f4205ce4f305d1fe5fb5e58b974}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator=@{operator=}} \index{operator=@{operator=}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator=()}{operator=()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::operator= (\begin{DoxyParamCaption}\item[{\hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&\&}]{rhs }\end{DoxyParamCaption}) -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}\& \hspace{0.3cm}{\ttfamily [inline]}} Definition at line 639 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7adc748dcb4969a61f2d934d4225d05c}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7adc748dcb4969a61f2d934d4225d05c}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator\mbox{[}\mbox{]}@{operator[]}} \index{operator\mbox{[}\mbox{]}@{operator[]}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator[]()}{operator[]()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ T\& \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::operator\mbox{[}$\,$\mbox{]} (\begin{DoxyParamCaption}\item[{std\+::size\+\_\+t}]{index }\end{DoxyParamCaption}) \&\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 720 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7cdecf23d865d2d30f227332f7385d54}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7cdecf23d865d2d30f227332f7385d54}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator\mbox{[}\mbox{]}@{operator[]}} \index{operator\mbox{[}\mbox{]}@{operator[]}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator[]()}{operator[]()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ const T\& \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::operator\mbox{[}$\,$\mbox{]} (\begin{DoxyParamCaption}\item[{std\+::size\+\_\+t}]{index }\end{DoxyParamCaption}) const \&\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 724 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af611c691eddf7ca679f3b7c00ab4601f}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af611c691eddf7ca679f3b7c00ab4601f}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!owns@{owns}} \index{owns@{owns}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{owns()}{owns()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::owns (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const -\/$>$ bool \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 678 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a0454f4b8040139139dbe7373772a170e}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a0454f4b8040139139dbe7373772a170e}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!release@{release}} \index{release@{release}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{release()}{release()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::release (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \& -\/$>$ T$\ast$ \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 679 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a9d845b09ab52c539f265aa99c9913e18}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a9d845b09ab52c539f265aa99c9913e18}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!reset@{reset}} \index{reset@{reset}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{reset()}{reset()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::reset (\begin{DoxyParamCaption}\item[{T $\ast$}]{p = {\ttfamily nullptr}, }\item[{bool}]{owner = {\ttfamily false}, }\item[{std\+::decay\+\_\+t$<$ Deleter $>$}]{del = {\ttfamily \{\}} }\end{DoxyParamCaption}) \& -\/$>$ void \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 690 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ad51a29b7255981c5f093197dbbdaf6a4}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ad51a29b7255981c5f093197dbbdaf6a4}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!reset@{reset}} \index{reset@{reset}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{reset()}{reset()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::reset (\begin{DoxyParamCaption}\item[{T $\ast$}]{p, }\item[{std\+::decay\+\_\+t$<$ Deleter $>$}]{del = {\ttfamily \{\}} }\end{DoxyParamCaption}) \& -\/$>$ void \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 699 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a29e9a6c77df27230b4f1c26ceda675ab}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a29e9a6c77df27230b4f1c26ceda675ab}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!swap@{swap}} \index{swap@{swap}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{swap()}{swap()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::swap (\begin{DoxyParamCaption}\item[{\hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&}]{other }\end{DoxyParamCaption}) -\/$>$ void \hspace{0.3cm}{\ttfamily [inline]}} Definition at line 708 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a91d8990a847e41065015815da307d208}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a91d8990a847e41065015815da307d208}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!to\+\_\+unique@{to\+\_\+unique}} \index{to\+\_\+unique@{to\+\_\+unique}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{to\+\_\+unique()}{to\_unique()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::to\+\_\+unique (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) \&\& -\/$>$ \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Transfers ownership to a unique\+\_\+ptr if possible. If $\ast$this is not owning, returns nullptr. \begin{DoxyPostcond}{Postcondition} If ownership was transferred, $\ast$this is null. Otherwise, does nothing. \end{DoxyPostcond} \begin{DoxyReturn}{Returns} std\+::unique\+\_\+ptr$<$\+T, Deleter$>$ Either a pointer which owns what $\ast$this owned, or a null pointer. \end{DoxyReturn} Definition at line 656 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ac8406b39f6fafb27ae7e275bf327b19d}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ac8406b39f6fafb27ae7e275bf327b19d}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!weak@{weak}} \index{weak@{weak}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{weak()}{weak()}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ auto \hyperlink{classkblib_1_1cond__ptr}{kblib\+::cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$\+::weak (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const \& -\/$>$ \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr} \hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [noexcept]}} Definition at line 674 of file memory.\+h. \subsection{Friends And Related Function Documentation} \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af61e5b452edde39ca5d0cdde94fd65ea}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_af61e5b452edde39ca5d0cdde94fd65ea}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator==@{operator==}} \index{operator==@{operator==}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator==}{operator==}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ constexpr auto operator== (\begin{DoxyParamCaption}\item[{const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&}]{lhs, }\item[{const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&}]{rhs }\end{DoxyParamCaption}) -\/$>$ bool \hspace{0.3cm}{\ttfamily [friend]}} Definition at line 729 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a92b1d18c8db327093cb7978c80a2a00a}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a92b1d18c8db327093cb7978c80a2a00a}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator==@{operator==}} \index{operator==@{operator==}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator==}{operator==}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ constexpr auto operator== (\begin{DoxyParamCaption}\item[{const \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&}]{lhs, }\item[{const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&}]{rhs }\end{DoxyParamCaption}) -\/$>$ bool \hspace{0.3cm}{\ttfamily [friend]}} Definition at line 734 of file memory.\+h. \mbox{\Hypertarget{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae57a614a50b0c04e6958395ef8898e25}\label{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_ae57a614a50b0c04e6958395ef8898e25}} \index{kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}!operator==@{operator==}} \index{operator==@{operator==}!kblib\+::cond\+\_\+ptr$<$ T\mbox{[}\mbox{]}, Deleter $>$@{kblib\+::cond\+\_\+ptr$<$ T[], Deleter $>$}} \subsubsection{\texorpdfstring{operator==}{operator==}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}} {\footnotesize\ttfamily template$<$typename T , typename Deleter $>$ \\ constexpr auto operator== (\begin{DoxyParamCaption}\item[{const \hyperlink{classkblib_1_1cond__ptr}{cond\+\_\+ptr}$<$ T\mbox{[}$\,$\mbox{]}, Deleter $>$ \&}]{lhs, }\item[{const \hyperlink{classkblib_1_1cond__ptr_3_01_t[]_00_01_deleter_01_4_a7b455396685d4d6c8ee6095af7defe7d}{unique} \&}]{rhs }\end{DoxyParamCaption}) -\/$>$ bool \hspace{0.3cm}{\ttfamily [friend]}} Definition at line 738 of file memory.\+h. The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize} \item kblib/\hyperlink{memory_8h}{memory.\+h}\end{DoxyCompactItemize}